Version 3.7 of dbx is a beta-release of the 4.3 BSD symbolic debugger dbx. This version has been adapted to understand the A/UX symbol table format (COFF) and to provide support for the debugging of A/UX Toolbox hybrid applications.
Contents
--------
dbx - version 3.7 for A/UX
dbx.1 - manual page
newunix - A/UX 2.0.1 kernel module (needed to support debugging of hybrid apps)
Installation
-----------
To install dbx you must be super-user (either login as root, or become root with su)
and do the following:
1. copy dbx to /usr/ucb/dbx
2. copy dbx.1 to /usr/catman/u_man/man1/dbx.1
If you want to debug hybrid applications, you will need a new A/UX 2.01 kernel. To build and install a new kernel do the following:
After building the new A/UX kernel, dbx can be used to debug hybrid applications. Hybrid applications are A/UX COFF binaries that make toolbox traps. For example,
the A/UX CommandShell is a hybrid application.
To debug hybrid applications it is necessary to run the debugger from an external terminal. The external terminal may be another Unix system connected by the ethernet (via telnet or rlogin) or a terminal on a serial line.
An Important Note on the A/UX Toolbox
-----------------------------------
A/UX uses Unix signals heavily in its emulation of the Macintosh toolbox. In particular, SIGIOT is used to emulate VBL tasks, SIGIO and SIGURG are both used in the completion routines for A/UX AppleTalk. When you debug hybrid applications, you will want this signals to not be caught by the debugger. In dbx, to prevent the catching of these
signals, use the following command:
ignore SIGIOT SIGIO SIGURG
Known Problems
---------------
- Dbx does not handle floating point registers.
- Doing a 'next' at the entry of a function will cause dbx to exit the function being debugged. A work around is to do a 'step' followed by a 'next'.
- The 'trace in <procedure>' command does not behave correctly.
New Versions
------------
New versions of dbx will be placed on the Internet host aux.apple.support.com (130.43.6.2).